#ifndef SALIDA_H_
#define SALIDA_H_
#include "concurrencia/SimulacionHandler.h"
#include "concurrencia/SignalHandler.h"
#include "concurrencia/Fifo.h"
#include "Auto.h"
#include "Utils.h"
#include "concurrencia/Semaforo.h"
#include "Estacionamiento.h"

class Salida {
private:
	Fifo * salidaDeAutos;
	SimulacionHandler* simulacionHandler;
	Semaforo* semaforoEscritura;
	Semaforo* semaforoLectura;
	Semaforo* terminar;
	int id;
public:
	Salida(int id, Semaforo *lectura, Semaforo *escritura);
	//Inicia cada una de las salidas y va tomando autos del fifo para sacarlos del estacionamiento
	void iniciar();
	int getId();
	virtual ~Salida();
};

#endif /* SALIDA_H_ */
